angular.module('app').config(function ($stateProvider) {

    $stateProvider.state('app.dialog', {
        url         : '/dialog',
        label       : '弹窗提示',
        controller  : 'app.dialog',
        controllerAs: '$ctrl',
        templateUrl : 'view/app/dialog/dialog.html'
    });
}).controller('app.dialog', function ($ionicPlatform) {
    var ctrl = this;
    ctrl.message = 'Hello World!';
    $ionicPlatform.ready(function () {
        ctrl.alert = function () {
            /**
             * navigator.notification.alert(message, alertCallback, [title], [buttonName])
             */
            navigator.notification.alert(ctrl.message, function () {
                alert('alert callback');
            }, '标题', '按钮名称');
        };
        ctrl.confirm = function () {
            /**
             * navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels])
             * - buttonLabels: 从数组的左到右依次放入按钮栏的右到左
             */
            navigator.notification.confirm('确认删除?', function (buttonIndex) {
                var msg = buttonIndex == 1 ? '已删除' : '已取消';
                alert(msg);
            }, '警告', ['删除', '取消']);
        };
        ctrl.prompt = function () {
            /**
             * navigator.notification.prompt(message, promptCallback, [title], [buttonLabels], [defaultText])
             * - promptCallback: 函数中返回一个 result, result 中包含了一个 buttonIndex(从 1 开始)及 input1 属性.
             */
            navigator.notification.prompt('请输入用户名:', function (result) {
                alert('buttonIndex: ' + result.buttonIndex + ', inputText: ' + result.input1);
            }, '注册', ['确认', '取消'], '默认文字');
        };
        ctrl.deep = function () {
            /**
             * navigator.notification.beep(times);
             * 提示语
             * - times: 提示次数
             */
            navigator.notification.beep(2);
        };
    });
});